package hui.com.security;

import org.springframework.security.access.PermissionEvaluator;
import org.springframework.security.core.Authentication;
import org.springframework.stereotype.Component;

import java.io.Serializable;

/**
 * @    权限逻辑
 * 通过令牌获取redis里对应登录用户的权限。
 */
@Component
public class CustomPermissionEvaluator implements PermissionEvaluator {

    @Override
    public boolean hasPermission(
            Authentication authentication,
            Object targetDomainObject,
            Object permission) {
        System.out.println("b");
        System.out.println(authentication+"====="+targetDomainObject+"====="+permission);
        return true;
        // 在这里实现自定义的权限逻辑
        // 可以从Redis中获取权限信息进行判断
        // 返回true表示有权限，false表示无权限
    }

    @Override
    public boolean hasPermission(
            Authentication authentication,
            Serializable targetId,
            String targetType,
            Object permission) {
        System.out.println("a");
        System.out.println(authentication+"====="+targetId+"====="+targetType+"====="+permission);
        return true;
        // 在这里实现另一种形式的权限判断逻辑
        // 可以从Redis中获取权限信息进行判断
        // 返回true表示有权限，false表示无权限
    }
}
